The present invention relates generally to a system for transmitting and/or storing information via a medium of a high error rate, such as a radio transmission line. More specifically, the invention relates to a coding and/or decoding system suited to carry out the error correction/detection coding of a compressed code string obtained by the high efficiency compression coding to transmit and/or store the compressed code string.
For example, in a system for carrying out the high-efficient compression coding of a picture and/or voice information so as to have a small information content to transmit the compression-coded picture and/or voice information via a radio transmission line, such as a radio visual telephone, a portable information terminal and a digital television broadcast system, it is important how to transmit the obtained code string with a high quality since the transmission line has a high error rate.
In a case where a code string is transmitted and/or stored via such a medium of a high error rate, an error correcting code, such as a Bose-Chaudhuri-Hocquenghem (BCH) code, a Recommended Standard (RS) code and a convolutional code, is often used as means for reducing the error rate. In addition, an error correcting code, such as a check sum and a cyclic redundancy check (CRC), is used as means for enabling the error correction on the receiving side. The aforementioned error correction and/or error detection adds excessive bits (redundancy) to the transmitted and/or stored information in accordance with a predetermined rule to examine whether the transmitted and/or stored code string obeys the rule during decoding, to carry out the error correction/detection on the basis of the results.
However, in such a method for coding a code string obtained by a high-efficiency compression coding into error correcting/detecting codes to transmit and/or store the codes, there is a disadvantage in that it is difficult to be combined with a synchronous recovering technique for recovering a step out caused by a code word error in the transmission line/medium. As a synchronous recovering technique, a method for inserting a uniformly decodable code called a synchronization code to resume the decoding immediately after the synchronization code is detected when a step out occurs is often used.
In order to make a uniformly decodable code word of the synchronization code, the code word must be combined with another code word so as not to form the same bit pattern as the synchronization code. However, in an error correction-/detection coding, it is generally difficult to form a code word so as to prevent a certain bit pattern from occurring. When the same bit pattern as the synchronization code occurs, a pseudo synchronization may be caused by the error detection of the synchronization code.
In order to avoid this problem, there is used a method for preventing the pseudo synchronization by determining whether the same bit pattern as the synchronization code exists in the code string after performing the error correction/detection coding, inserting a dummy bit into the bit pattern in accordance with a certain rule when the same bit pattern exists, and deleting the dummy bit in the same rule in a decoding system. However, in a case where the code string is transmitted and/or stored via a medium in which errors are easy to occur, errors may occur in the inserted bit, so that there is a problem in that a new step out or a new pseudo synchronization may occur.
In addition, in a case where the error correction/detection coding of a code string is carried out to insert a synchronization code, there is also a problem in that the coding efficiency is lowered since it is required to add many inserted bits to the code string in order to compensate an excess of information bits, for which the error detection and/or detection coding is to be carried out, at the end portion of a synchronization interval between the adjacent synchronization codes.
On the other hand, in order to enhance the error correcting/detecting capability, the redundancy of the transmitted and/or stored information may be enhanced. However, if the redundancy is enhanced, the number of bits required to transmit the same information is increased. Therefore, if the error correcting/detecting capability is enhanced, it is required to provide a transmission line of a higher transmission rate, or the number of bits of information to be stored is increased. In addition, if the transmission rate and the stored capacity are the same, the amount of information, which can be transmitted and/or stored, is decreased as the redundancy is enhanced. In a case where a picture and/or voice information is high-efficiently compression-coded to be transmitted and/or stored, in order to add the redundancy to improve the error resistance, the compression coding into a smaller amount of information must be carried out if the transmission and/or storage rate is the same, so that the picture quality and sound quality are lowered.
Therefore, as a method for providing a smaller redundancy and a high error resistance, there is a method called hierarchical coding. This is a method for enhancing the error resistance using the same means redundancy in comparison with when the same error correcting/detecting code is used, by classifying the high-efficiency compression-coded information in accordance with the magnitude of errors influencing the picture quality and the sound quality, using an error correcting/detecting code of a higher error correction/detection capacity while having a high redundancy, for information under a great influence of the error, and using an error correcting/detecting code of a less redundancy while having not so high error correction/detection capacity, for information which is not so greatly influenced by the error.
For example, in a coding system, which is formed by combining the motion-compensated prediction with the orthogonal transform and which is often used for the high-efficiency compression coding of a dynamic image, i.e., in a system for motion-compensation predicting an input dynamic image signal to orthogonal transform its prediction residue by the discrete cosine transform (DCT) or the like, the error correcting/detecting codes of a high error correcting/detecting capability are used for motion vector information, which greatly deteriorate the picture quality if an error occurs, and for lower coefficients of the orthogonal transformation coefficients of the prediction residual signal, and the error correcting/detecting codes of a low error correcting-/detecting capability are used for higher coefficients of the orthogonal transformation coefficients of the prediction residual signal, which are under a small influence of the error.
In order to achieve such a hierarchical coding, it is required to switch the error correcting/detecting codes of different error correcting/detecting capabilities in the middle of the output code string. As a method for switching the error correcting/detecting codes of different error correcting/detecting capabilities, there is a method for adding a header information representative of the kind of the error correcting/detecting codes to a code string. FIG. 11 shows an example of a code string, to which the header information is added to switch the error correcting/detecting codes. In this example, two kinds of error correcting/detecting codes FEC1 and FEC2 are switched. The headers 1101 to 1104 have a header information representative of the kind of the error correcting/detecting codes and the number of the code words. In a coding system, code words, which are error correction/detection coded, are arranged after the header information. In a decoding system, the header information is decoded, and the error correcting/detecting codes are decoded in accordance with the decoding of the header information.
However, in the method for switching the error correcting/detecting codes by adding such a header information, there is a problem in that the number of bits of the code string to be transmitted and/or stored by adding the header information is increased. In a case where the picture and/or voice information is high-efficiency compression coded to be transmitted and/or stored, if the number of bits is occupied by the header information, the number of bits used for the high-efficiency compression coding of the picture and/or voice information is decreased, so that the picture quality and sound quality are deteriorated.
As mentioned above, if the error correction/detection coding of the code string, in which the high-efficiency compression coding of dynamic image signals and so forth is performed, is carried out, an optional bit pattern is produced. Therefore, in a case where the error correction-/detection coding is combined with the synchronous recovering technique using a uniformly decodable synchronization code, there is a problem in that a pseudo synchronization is caused by the error detection of the synchronization code. Also in a case where the dummy bit is inserted to prevent the pseudo synchronization, there is a problem in that a new step out or a new pseudo synchroni-zation is caused by the error of the inserted bit.
In addition, in a case where the error correction-/detection coding of the code string is performed and the synchronization code is inserted, it is conventionally required to use many inserted bits to compensate an excess of information bits, for which the error detection and/or detection coding is to be carried out, at the end portion of a synchronization interval between the adjacent synchronization codes, so that there is a problem in that the coding efficiency is lowered.
Moreover, in a coding/decoding system for switching error correcting/detecting codes of different error correcting/detecting capabilities by adding a header information, the number of bits to be transmitted and/or stored by adding the header information is increased. Therefore, in a case where a picture and/or voice information is high-efficiency compression coded to be transmitted and/or stored, there is a problem in that the information content assigned to the picture and/or voice information is decreased to lower the picture quality and the sound quality.